
package cn.org.chiss.rhin._2015.base.object;

import cn.org.chiss.rhin._2015.base.Boolean;
import cn.org.chiss.rhin._2015.base.Integer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import cn.org.chiss.rhin._2015.base.*;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import java.util.ArrayList;
import java.util.List;


/**
 * <p>Person complex type的 Java 类。
 *
 * <p>以下模式片段指定包含在此类中的预期内容。
 *
 * <pre>
 * &lt;complexType name="Person"&gt;
 *   &lt;complexContent&gt;
 *     &lt;extension base="{http://www.chiss.org.cn/rhin/2015}RegObject"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="identifier" type="{http://www.chiss.org.cn/rhin/2015}Identifier" maxOccurs="unbounded" minOccurs="0"/&gt;
 *         &lt;element name="name" type="{http://www.chiss.org.cn/rhin/2015}HumanName" maxOccurs="unbounded" minOccurs="0"/&gt;
 *         &lt;element name="birthTime" type="{http://www.chiss.org.cn/rhin/2015}Date" minOccurs="0"/&gt;
 *         &lt;element name="gender" type="{http://www.chiss.org.cn/rhin/2015}Code" minOccurs="0"/&gt;
 *         &lt;element name="address" type="{http://www.chiss.org.cn/rhin/2015}Address" maxOccurs="unbounded" minOccurs="0"/&gt;
 *         &lt;element name="telecom" type="{http://www.chiss.org.cn/rhin/2015}Telecom" maxOccurs="unbounded" minOccurs="0"/&gt;
 *         &lt;element name="languageCommunication" type="{http://www.chiss.org.cn/rhin/2015}Language" maxOccurs="unbounded" minOccurs="0"/&gt;
 *         &lt;element name="birthPlace" type="{http://www.chiss.org.cn/rhin/2015}Address" minOccurs="0"/&gt;
 *         &lt;element name="maritalStatusCode" type="{http://www.chiss.org.cn/rhin/2015}Code" minOccurs="0"/&gt;
 *         &lt;element name="deceasedInd" type="{http://www.chiss.org.cn/rhin/2015}Boolean" minOccurs="0"/&gt;
 *         &lt;element name="deceasedTime" type="{http://www.chiss.org.cn/rhin/2015}DateTime" minOccurs="0"/&gt;
 *         &lt;element name="multipleBirthInd" type="{http://www.chiss.org.cn/rhin/2015}Boolean" minOccurs="0"/&gt;
 *         &lt;element name="multipleBirthOrderNumber" type="{http://www.chiss.org.cn/rhin/2015}Integer" minOccurs="0"/&gt;
 *         &lt;element name="photo" type="{http://www.chiss.org.cn/rhin/2015}Base64Binary" minOccurs="0"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/extension&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Person", propOrder = {
        "identifier",
        "name",
        "birthTime",
        "gender",
        "address",
        "telecom",
        "languageCommunication",
        "birthPlace",
        "maritalStatusCode",
        "deceasedInd",
        "deceasedTime",
        "multipleBirthInd",
        "multipleBirthOrderNumber",
        "photo"
})
@Accessors(chain = true)
@Data
@EqualsAndHashCode(callSuper=false)
public class Person extends RegObject {


	@XmlElement(nillable = true)
    protected List<Identifier> identifier;
    @XmlElement(nillable = true)
    protected List<HumanName> name;
    protected Date birthTime;
    protected Code gender;
    @XmlElement(nillable = true)
    protected List<Address> address;
    @XmlElement(nillable = true)
    protected List<Telecom> telecom;
    @XmlElement(nillable = true)
    protected List<Language> languageCommunication;
    protected Address birthPlace;
    protected Code maritalStatusCode;
    protected Boolean deceasedInd;
    protected DateTime deceasedTime;
    protected Boolean multipleBirthInd;
    protected Integer multipleBirthOrderNumber;
    protected Base64Binary photo;

   
}
